package com.example.dzbsh.model;

import java.util.ArrayList;
import java.util.List;

public class DeptExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DeptExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andDeptidIsNull() {
            addCriterion("deptid is null");
            return (Criteria) this;
        }

        public Criteria andDeptidIsNotNull() {
            addCriterion("deptid is not null");
            return (Criteria) this;
        }

        public Criteria andDeptidEqualTo(String value) {
            addCriterion("deptid =", value, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidNotEqualTo(String value) {
            addCriterion("deptid <>", value, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidGreaterThan(String value) {
            addCriterion("deptid >", value, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidGreaterThanOrEqualTo(String value) {
            addCriterion("deptid >=", value, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidLessThan(String value) {
            addCriterion("deptid <", value, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidLessThanOrEqualTo(String value) {
            addCriterion("deptid <=", value, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidLike(String value) {
            addCriterion("deptid like", value, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidNotLike(String value) {
            addCriterion("deptid not like", value, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidIn(List<String> values) {
            addCriterion("deptid in", values, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidNotIn(List<String> values) {
            addCriterion("deptid not in", values, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidBetween(String value1, String value2) {
            addCriterion("deptid between", value1, value2, "deptid");
            return (Criteria) this;
        }

        public Criteria andDeptidNotBetween(String value1, String value2) {
            addCriterion("deptid not between", value1, value2, "deptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidIsNull() {
            addCriterion("parentdeptid is null");
            return (Criteria) this;
        }

        public Criteria andParentdeptidIsNotNull() {
            addCriterion("parentdeptid is not null");
            return (Criteria) this;
        }

        public Criteria andParentdeptidEqualTo(String value) {
            addCriterion("parentdeptid =", value, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidNotEqualTo(String value) {
            addCriterion("parentdeptid <>", value, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidGreaterThan(String value) {
            addCriterion("parentdeptid >", value, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidGreaterThanOrEqualTo(String value) {
            addCriterion("parentdeptid >=", value, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidLessThan(String value) {
            addCriterion("parentdeptid <", value, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidLessThanOrEqualTo(String value) {
            addCriterion("parentdeptid <=", value, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidLike(String value) {
            addCriterion("parentdeptid like", value, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidNotLike(String value) {
            addCriterion("parentdeptid not like", value, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidIn(List<String> values) {
            addCriterion("parentdeptid in", values, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidNotIn(List<String> values) {
            addCriterion("parentdeptid not in", values, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidBetween(String value1, String value2) {
            addCriterion("parentdeptid between", value1, value2, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andParentdeptidNotBetween(String value1, String value2) {
            addCriterion("parentdeptid not between", value1, value2, "parentdeptid");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengIsNull() {
            addCriterion("danweiduiwaimingcheng is null");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengIsNotNull() {
            addCriterion("danweiduiwaimingcheng is not null");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengEqualTo(String value) {
            addCriterion("danweiduiwaimingcheng =", value, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengNotEqualTo(String value) {
            addCriterion("danweiduiwaimingcheng <>", value, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengGreaterThan(String value) {
            addCriterion("danweiduiwaimingcheng >", value, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengGreaterThanOrEqualTo(String value) {
            addCriterion("danweiduiwaimingcheng >=", value, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengLessThan(String value) {
            addCriterion("danweiduiwaimingcheng <", value, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengLessThanOrEqualTo(String value) {
            addCriterion("danweiduiwaimingcheng <=", value, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengLike(String value) {
            addCriterion("danweiduiwaimingcheng like", value, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengNotLike(String value) {
            addCriterion("danweiduiwaimingcheng not like", value, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengIn(List<String> values) {
            addCriterion("danweiduiwaimingcheng in", values, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengNotIn(List<String> values) {
            addCriterion("danweiduiwaimingcheng not in", values, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengBetween(String value1, String value2) {
            addCriterion("danweiduiwaimingcheng between", value1, value2, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduiwaimingchengNotBetween(String value1, String value2) {
            addCriterion("danweiduiwaimingcheng not between", value1, value2, "danweiduiwaimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengIsNull() {
            addCriterion("danweiduineimingcheng is null");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengIsNotNull() {
            addCriterion("danweiduineimingcheng is not null");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengEqualTo(String value) {
            addCriterion("danweiduineimingcheng =", value, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengNotEqualTo(String value) {
            addCriterion("danweiduineimingcheng <>", value, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengGreaterThan(String value) {
            addCriterion("danweiduineimingcheng >", value, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengGreaterThanOrEqualTo(String value) {
            addCriterion("danweiduineimingcheng >=", value, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengLessThan(String value) {
            addCriterion("danweiduineimingcheng <", value, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengLessThanOrEqualTo(String value) {
            addCriterion("danweiduineimingcheng <=", value, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengLike(String value) {
            addCriterion("danweiduineimingcheng like", value, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengNotLike(String value) {
            addCriterion("danweiduineimingcheng not like", value, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengIn(List<String> values) {
            addCriterion("danweiduineimingcheng in", values, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengNotIn(List<String> values) {
            addCriterion("danweiduineimingcheng not in", values, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengBetween(String value1, String value2) {
            addCriterion("danweiduineimingcheng between", value1, value2, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andDanweiduineimingchengNotBetween(String value1, String value2) {
            addCriterion("danweiduineimingcheng not between", value1, value2, "danweiduineimingcheng");
            return (Criteria) this;
        }

        public Criteria andOrdernumIsNull() {
            addCriterion("ordernum is null");
            return (Criteria) this;
        }

        public Criteria andOrdernumIsNotNull() {
            addCriterion("ordernum is not null");
            return (Criteria) this;
        }

        public Criteria andOrdernumEqualTo(Integer value) {
            addCriterion("ordernum =", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotEqualTo(Integer value) {
            addCriterion("ordernum <>", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumGreaterThan(Integer value) {
            addCriterion("ordernum >", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumGreaterThanOrEqualTo(Integer value) {
            addCriterion("ordernum >=", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLessThan(Integer value) {
            addCriterion("ordernum <", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLessThanOrEqualTo(Integer value) {
            addCriterion("ordernum <=", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumIn(List<Integer> values) {
            addCriterion("ordernum in", values, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotIn(List<Integer> values) {
            addCriterion("ordernum not in", values, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumBetween(Integer value1, Integer value2) {
            addCriterion("ordernum between", value1, value2, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotBetween(Integer value1, Integer value2) {
            addCriterion("ordernum not between", value1, value2, "ordernum");
            return (Criteria) this;
        }

        public Criteria andIsvalidIsNull() {
            addCriterion("isvalid is null");
            return (Criteria) this;
        }

        public Criteria andIsvalidIsNotNull() {
            addCriterion("isvalid is not null");
            return (Criteria) this;
        }

        public Criteria andIsvalidEqualTo(Integer value) {
            addCriterion("isvalid =", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidNotEqualTo(Integer value) {
            addCriterion("isvalid <>", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidGreaterThan(Integer value) {
            addCriterion("isvalid >", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidGreaterThanOrEqualTo(Integer value) {
            addCriterion("isvalid >=", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidLessThan(Integer value) {
            addCriterion("isvalid <", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidLessThanOrEqualTo(Integer value) {
            addCriterion("isvalid <=", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidIn(List<Integer> values) {
            addCriterion("isvalid in", values, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidNotIn(List<Integer> values) {
            addCriterion("isvalid not in", values, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidBetween(Integer value1, Integer value2) {
            addCriterion("isvalid between", value1, value2, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidNotBetween(Integer value1, Integer value2) {
            addCriterion("isvalid not between", value1, value2, "isvalid");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaIsNull() {
            addCriterion("xuliebianma is null");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaIsNotNull() {
            addCriterion("xuliebianma is not null");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaEqualTo(String value) {
            addCriterion("xuliebianma =", value, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaNotEqualTo(String value) {
            addCriterion("xuliebianma <>", value, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaGreaterThan(String value) {
            addCriterion("xuliebianma >", value, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaGreaterThanOrEqualTo(String value) {
            addCriterion("xuliebianma >=", value, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaLessThan(String value) {
            addCriterion("xuliebianma <", value, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaLessThanOrEqualTo(String value) {
            addCriterion("xuliebianma <=", value, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaLike(String value) {
            addCriterion("xuliebianma like", value, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaNotLike(String value) {
            addCriterion("xuliebianma not like", value, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaIn(List<String> values) {
            addCriterion("xuliebianma in", values, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaNotIn(List<String> values) {
            addCriterion("xuliebianma not in", values, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaBetween(String value1, String value2) {
            addCriterion("xuliebianma between", value1, value2, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andXuliebianmaNotBetween(String value1, String value2) {
            addCriterion("xuliebianma not between", value1, value2, "xuliebianma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaIsNull() {
            addCriterion("jigoumingchengma is null");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaIsNotNull() {
            addCriterion("jigoumingchengma is not null");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaEqualTo(String value) {
            addCriterion("jigoumingchengma =", value, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaNotEqualTo(String value) {
            addCriterion("jigoumingchengma <>", value, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaGreaterThan(String value) {
            addCriterion("jigoumingchengma >", value, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaGreaterThanOrEqualTo(String value) {
            addCriterion("jigoumingchengma >=", value, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaLessThan(String value) {
            addCriterion("jigoumingchengma <", value, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaLessThanOrEqualTo(String value) {
            addCriterion("jigoumingchengma <=", value, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaLike(String value) {
            addCriterion("jigoumingchengma like", value, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaNotLike(String value) {
            addCriterion("jigoumingchengma not like", value, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaIn(List<String> values) {
            addCriterion("jigoumingchengma in", values, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaNotIn(List<String> values) {
            addCriterion("jigoumingchengma not in", values, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaBetween(String value1, String value2) {
            addCriterion("jigoumingchengma between", value1, value2, "jigoumingchengma");
            return (Criteria) this;
        }

        public Criteria andJigoumingchengmaNotBetween(String value1, String value2) {
            addCriterion("jigoumingchengma not between", value1, value2, "jigoumingchengma");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}